"""
Python的运算符实际上是通过调用对象的特殊方法实现的。a+b实际上是a.__add__(b)
特殊方法：
    方法 说明 例子
__init__ 构造方法 对象创建和初始化： p = Person()
__del__ 析构方法 对象回收
__repr__ , __str__ 打印，转换 print(a)
__call__ 函数调用 a()
__getattr__ 点号运算 a.xxx
__setattr__ 属性赋值 a.xxx = value
__getitem__ 索引运算 a[key]
__setitem__ 索引赋值 a[key]=value
__len__ 长度 len(a)

运算符重载：

"""


class A:
    def __add__(self, other):
        return r"{self}--{other}".format(self=self, other=other)


obj = A()
temp = obj + 'fdaf'
print(temp)
